65 research outputs found

    A Component-Based and Aspect-Oriented Model for Software Evolution

    Get PDF
    International audienceComponent-Based Software Development (CBSD) and Aspect-Oriented Software Development (AOSD) are solutions to support software evolution by decomposing a software system into concerns. In this article, we propose Fractal Aspect Component (FAC), a general and symmetrical model for components and aspects. FAC decomposes a software system into regular components and aspect components which embody crosscutting concerns. We reify the relationship between an aspect component and a component, called an aspect binding, as a first-class runtime entity. The evolution of the system can be expressed by adding or removing components (aspect or regular) and by setting bindings (regular or crosscutting)

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    Get PDF
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    Le système de composants Fractal

    Get PDF
    Les approches à base de composants apparaissent de plus en plus incontournables pour le développement de systèmes et d'applications répartis. Il s'agit de faire face à la complexité sans cesse croissante de ces logiciels et de répondre aux grands défis de l'ingénierie des systèmes : passage à grande échelle, administration, autonomie. Après les objets dans la première moitié des années 1990, les composants se sont imposés comme le paradigme clé de l'ingénierie des intergiciels et de leurs applications dans la seconde moitié des années 1990. L'intérêt de la communauté industrielle et académique s'est d'abord porté sur les modèles de composants pour les applications comme EJB, CCM ou .NET. A partir du début des années 2000, le champ d'application des composants s'est étendu aux couches inférieures : systèmes et intergiciels. Il s'agit toujours, comme pour les applications, d'obtenir des entités logicielles composables aux interfaces spécifiées contractuellement, déployables et configurables~; mais il s'agit également d'avoir des plates-formes à composants suffisamment performantes et légères pour ne pas pénaliser les performances du système. Le modèle de composants Fractal remplit ces conditions

    Towards an Autonomic and Distributed Device Management for the Internet of Things

    Get PDF
    Best paper award at the Doctoral Symposium of ICAC 2019International audienc

    DĂ©ploiement d'applications patrimoniales en environnements de type informatique dans le nuage

    Get PDF
    L'objectif de cette thèse est d'offrir une solution de bout en bout permettant de décrire et de déployer de façon fiable une application distribuée dans un environnement virtualisé. Ceci passe par la définition d'un formalisme permettant de décrirer une application ainsi que son environnement d'exécution, puis de fournir les outils capable d'interpéter ce formalisme pour déployer (installer, instancier et configurer) l'application sur une plate-forme de type cloud computing.Cloud computing aims to cut down on the outlay and operational expenses involved in setting up and running applications. To do this, an application is split into a set of virtualized hardware and software resources. This virtualized application can be autonomously managed, making it responsive to the dynamic changes affecting its running environment. This is referred to as Application Life-cycle Management (ALM). In cloud computing, ALM is a growing but immature market, with many offers claiming to significantly improve productivity. However, all these solutions are faced with a major restriction: the duality between the level of autonomy they offer and the type of applications they can handle. To address this, this thesis focuses on managing the initial deployment of an application to demonstrate that the duality is artificial. The main contributions of this work are presented in a platform named VAMP (Virtual Applications Management Platform). VAMP can deploy any legacy application distributed in the cloud, in an autonomous, generic and reliable way. It consists of: a component-based model to describe the elements making up an application and their projection on the running infrastructure, as well as the dependencies binding them in the applicative architecture; an asynchronous, distributed and reliable protocol for self-configuration and self-activation of the application; mechanisms ensuring the reliability of the VAMP system itself. Beyond implementing the solution, the most critical aspects of running VAMP have been formally verified using model checking tools. A validation step was also used to demonstrate the genericity of the proposal through various real-life implementations.SAVOIE-SCD - Bib.électronique (730659901) / SudocGRENOBLE1/INP-Bib.électronique (384210012) / SudocGRENOBLE2/3-Bib.électronique (384219901) / SudocSudocFranceF

    A Demo of Application Lifecycle Management for IoT Collaborative Neighborhood in the Fog

    Get PDF
    International audienceRegarding latency, privacy, resiliency and network scarcity management, only distributed approaches such as proposed by Fog Computing architecture can efficiently address the fantastic growth of the Internet of Things (IoT). IoT applications could be deployed and run hierarchically at different levels in an infrastructure ranging from centralized datacenters to the connected things themselves. Consequently, software entities composing IoT applications could be executed in many different configurations. The heterogeneity of the equipment and devices of the target infrastructure opens opportunities in the placement of the software entities, taking into account their requirements in terms of hardware, cyber-physical interactions and software dependencies. Once the most appropriate place has been found, software entities have to be deployed and run. Container-based virtualization has been considered to overpass the complexity of packaging, deploying and running software entities in a heterogeneous distributed infrastructure at the vicinity of the connected devices. This paper reports a practical experiment presented as a live demo that showcases a " Smart Bell in a Collaborative Neighborhood " IoT application in the Fog. Application Lifecycle Management (ALM) has been put in place based on Docker technologies to deploy and run micro-services in the context of Smart Homes operated by Orange

    Coordinated autonomic loops for target identification, load and error-aware Device Management for the IoT

    Get PDF
    International audienceWith the expansion of Internet of Things (IoT) that relies on heterogeneous, dynamic, and massively deployed devices, device management (DM) (i.e., remote administration such as firmware update, configuration, troubleshooting and tracking) is required for proper quality of service and user experience, deployment of new functions, bug corrections and security patches distribution. Existing industrial DM platforms and approaches do not suit IoT devices and are already showing their limits with a few static home devices (e.g., routers, TV Decoders). Indeed, undetected buggy firmware deployment and manual target device identification are common issues in existing systems. Besides, these platforms are manually operated by experts (e.g., system administrators) and require extensive knowledge and skills. Such approaches cannot be applied on massive and diverse devices forming the IoT. To tackle these issues, our work in an industrial research context proposes to apply autonomic computing to DM platforms operation and impact tracking. Specifically, our contribution relies on of automated device targeting (i.e., aiming only suitable devices) and impact-aware DM (i.e., error and anomalies detection preceding patch generalization on all suitable devices of a given fleet). Our solution is composed of three coordinated autonomic loops and allows more accurate and faster irregularity diagnosis, vertical scaling along with simpler IoT DM platform administration. For experimental validation, we developed a prototype that demonstrates encouraging results compared to simulated legacy telecommunication operator approaches (namely Orange)

    Wrapping SRS with CORBA: from Textual Data to Distributed Objects

    No full text
    1.1 Motivation Biological data come in very different shapes. Databanks are maintained and used by distinct organizations. Text is the de facto standard exchange format. The SRS system can integrate heterogeneous textual databanks but it was lacking a way to structure the extracted data. 1.2 Results This paper presents a CORBA interface to the SRS system which manages databanks in a flat file format. SRS Object Servers are CORBA wrappers for SRS. They allow client applications (visualisation tools, data mining tools, etc.) to access and query SRS servers remotely through an Object Request Broker (ORB). They provide loader objects that contain the information extracted from the databanks by SRS. Loader objects are not hardcoded but generated in a flexible way by using loader specifications which allow SRS administrators to package data coming from distinct databanks. 1.3 Availability The prototype may be available for beta-testing. Please contact the SRS group (http://srs.ebi.ac.uk..

    Un modèle d'exécution paramétrique pour systèmes de bases de données actifs

    No full text
    An active database system is able to execute automatically some predefined actions in response to specific events when some conditions are satisfied. Active rule, of the form Event-Condition-Action, are the core of this approach. This thesis is concerned with active systems execution models. The execution model of an active rule system describes when and how (scheduling, synchronization) rules triggered during the execution of a transaction are executed during an application. First, we propose a taxonomy and a graphic representation of active systems execution models. Then we set out a parametric execution model named Flare (Flexible active rule execution). An essential characteristic of the model is to consider rule modules - each module being intended to a particular use of rules. The behaviour of each rule of a module can be specified, and then, the execution strategy of each module. In order to do that, one just has to choose a value for each proposed parameter among a set of predefined values. We also give a denotational (or functionnal) semantics of the model. We show that this formalism provides an implementable specification that we use within the framework of the experiment we are making around NAOS - an active rule system for the O2 object-oriented DBMS - in order to replace its execution engine by Flare.Un systeme de bases de données actif est capable d'executer automatiquement des actions predefinies en reponse a des evenements specifiques lorsque certaines conditions sont satisfaites. Les regles actives, de la forme evenement-Condition-Action, sont au coeur de cette approche. Dans cette these, nous nous interessons aux modeles d'execution des systemes actifs. Le modele d'execution d'un systeme actif decrit quand et comment (ordonnancement, synchronisation) sont executées, au cours d'une application, les regles declenchées lors de l'execution d'une transaction. Nous proposons tout d'abord une taxonomie et une representation graphique des modeles d'execution des systemes actifs. Nous exposons ensuite un modele d'execution parametrique nomme Flare (Flexible active rule execution). Une caracteristique essentielle de ce modele est de considerer des modules de regles - chaque module etant destine a une utilisation particuliere des regles. On peut specifier, d'une part, le comportement de chaque regle d'un module, et d'autre part, la strategie d'execution de chaque module. Il suffit, pour cela, de choisir une valeur pour chacun des parametres proposes parmi un ensemble de valeurs predefinies. Nous donnons egalement une semantique denotationnelle (ou fonctionnelle) du modele. Nous montrons que ce formalisme fournit une specification implantable que nous utilisons dans le cadre de l'experimentation que nous menons autours de NAOS - un mecanisme de regles actives pour le SGBD a objets O2 - afin de remplacer son moteur d'execution par Flare
    • …
    corecore